

public class Test {
	static int b= (int) (6+Math.random());
	int bb = 5;
	int c = (int) (6+Math.random());
	final int finaA = (int) (6+Math.random());
	static int staticA =20+4;
	final static int staticAa;
	static int a ;
	public Test(){
		System.out.println("this is construct function");
	}
	static {
		System.out.println("this is static block.");
		staticAa = 22+b;
	}
	private int fun(){
		try {
			int[] a = {1,2};
			return a[3]; 
		} catch (Exception e) {
			return 3;
		} finally {
			return a;
		}
	}
	
	public static void main(String[] args) {
		System.out.println("main func");
		a = 2+b;
		Test t = new Test();
		int b = t.fun();
		System.out.println(b);
		System.out.println("over");
	}
}
